home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-11-09 | 1.8 KB | 62 lines | [TEXT/MPS ] |
- ;________________________________________________________________________________________________
- ; File: EgretWakeUp.a
- ; 11/02/93 DTS
- ;________________________________________________________________________________________________
-
- BLANKS ON
- STRING ASIS
-
- PRINT OFF
-
- MACHINE MC68020
-
- INCLUDE 'EgretWakeUpEqu.a'
- INCLUDE 'Traps.a'
-
- PRINT ON
-
-
- ;________________________________________________________________________________________________
- ; PROCEDURE SetEgretWakeUpTime(WakeUpWhen: LONGINT);
- ;
- ; This external Pascal procedure calls the egret trap set a wake up time for the IIsi.
- ;
- ; Input arguments: (on stack) Wake up time in seconds
- ; Returns: nothing
- ; Destroys: a1
- ;________________________________________________________________________________________________
-
- SetEgretWakeUpTime PROC EXPORT ;it's a procedure, make it visible to outside
-
-
- BuildPB move.l a0, -(sp) ;save a0
- sub.l #EgretPB.EgretPBSize,sp ;make a param block on stack
- move.l sp, a0 ;point a0 to pb
-
- ;fill in the parameter block
-
- move.b #pseudoPkt, EgretPB.pbCmdType(a0)
- move.b #WrPwrupTime, EgretPB.pbCmd(a0)
- move.l 4(a7), EgretPB.pbParam(a0) ;copy wake up time to pb.
- clr.w EgretPB.pbByteCnt(a0) ;Power Up CDEV does this (instead of
- ;move.w #4, EgretPB.pbByteCnt(a0)
- clr.l EgretPB.pbBufPtr(a0)
- clr.b EgretPB.pbFlags(a0)
- clr.b EgretPB.pbSpareFlags(a0)
- clr.w EgretPB.pbResult(a0)
- clr.l EgretPB.pbCompletion(a0)
-
- _EgretDispatch
-
- add.l #EgretPB.EgretPBSize,sp ;strip pb off stack
-
- returnToCaller
- move.l (sp)+,a0 ;Restore a0
- move.l (sp)+,a1 ;pop return address
- add.l #4,sp ;kill input argument (wake up time)
- jmp (a1) ;return
- ENDPROC
-
-
- END
-